# Makefile para o metodo de Gauss-Legendre

NAME = gauss-legendre

CC = gcc
CFLAGS = -Wall
GMPF = -lgmp
PTHF = -lpthread
HDIR = inc
ODIR = obj
SDIR = src
SEQ = $(NAME)-seq
PTH	= $(NAME)-pth
 
all: $(SEQ) $(PTH) resultados

resultados:
	mkdir -p resultados

$(SEQ): $(ODIR)/$(SEQ).o $(ODIR)/$(NAME).o
	$(CC) $(CFLAGS) $(GMPF) -o $@ $^

$(PTH): $(ODIR)/$(PTH).o $(ODIR)/$(NAME).o
	$(CC) $(CFLAGS) $(GMPF) $(PTHF) -o $@ $^

$(ODIR)/$(NAME).o: $(SDIR)/$(NAME).c $(ODIR)
	$(CC) $(CFLAGS) -I$(HDIR) -o $@ -c $<

$(ODIR)/$(SEQ).o: $(SDIR)/$(SEQ).c $(ODIR)
	$(CC) $(CFLAGS) -I$(HDIR) -o $@ -c $<

$(ODIR)/$(PTH).o: $(SDIR)/$(PTH).c $(ODIR)
	$(CC) $(CFLAGS) -I$(HDIR) -o $@ -c $<

$(ODIR):
	mkdir -p $@

clean:
	rm -rf $(ODIR)/*.o $(SEQ) $(PTH) resultados

